const WebSocket = require('ws');
const { exec } = require("child_process")
function webSocketLink(mainWindow, getAmountType) {
  console.log(getAmountType);
  // 创建WebSocket服务器对象
  const wss = new WebSocket.Server({ port: 8080});
  wss.on('connection', function connection(ws,req) {
    console.log(req.url)

    const senddata = {
      state: 5,
      msg: '客户端连接成功'
    }
    mainWindow.webContents.send('update-msg', senddata)
    // 当收到消息时处理
    ws.on('message', function incoming(message) {
      const senddata = {
        state: 6,
        msg: String(message)
      }
      mainWindow.webContents.send('update-msg', senddata)
      // 向客户端发送消息
      // ws.send('Hello from server!');
    });
    ws.on('close', () => {
      console.log('WebSocket连接已断开');
    })
  });
  // 子进程名称
  let workerProcess
  let typeprop = 0 //用于区分是否要开启监听退款码（小票模式开启）
  // 执行命令行，如果命令不需要路径，或就是项目根目录，则不需要cwd参数：

  if (getAmountType == 3) {
    typeprop = 1
  }
  workerProcess = exec('sendKey1.exe 8080 ' + typeprop) //链接socket
  // 不受child_process默认的缓冲区大小的使用方法，没参数也要写上{}：workerProcess = exec(cmdStr, {})

  // 打印正常的后台可执行程序输出
  workerProcess.stdout.on('data', function (data) {
    console.log('stdout: ' + data);
  });
}


export default webSocketLink



